import request from '@/utils/request'
import { ApiModulesRoutes } from '@/consts.js'

/**
 * 分页查询用户
 * @param {String} data.pageNo
 * @param {String} data.pageSize
 */

export function getUserlist(data) {
  return request({
    url: `${ApiModulesRoutes.USER}/user/findUserPageByParam`,
    method: 'POST',
    data,
  })
}

/**
 * 删除用户
 * @param {string} UserId
 */

export function delUserList(userId) {
  return request({
    url: `${ApiModulesRoutes.USER}/user/delUserById`,
    method: 'GET',
    params: { userId },
  })
}

/**
 * 新增用户
 * @param {String} data.account
 * @param {String} data.dataStatusEnum
 * @param {List} data.userOrgs
 */

export function addUserlist(data) {
  return request({
    url: `${ApiModulesRoutes.USER}/user/addUser`,
    method: 'POST',
    data,
  })
}


/**
 * 修改用户
 * @param {String} data.account
 * @param {String} data.dataStatusEnum
 * @param {String} data.account
 * @param {Object} data.orgUserVo
 * @param {Array} data.userRoleVos
 */

export function updateUserlist(data) {
  return request({
    url: `${ApiModulesRoutes.USER}/user/updateUser`,
    method: 'POST',
    data,
  })
}

/**
 * 条件查询用户
 * @param {String} data.keyword
 * @param {String} data.pageNo
 * @param {String} data.pageSize
 */
export function findUserPageByParam(data) {
  return request({
    url: `${ApiModulesRoutes.USER}/user/findUserPageByParam`,
    method: 'POST',
    data,
  })
}

/**
 * 查询所有组织
 */

export function findOrgList() {
  return request({
    url: `${ApiModulesRoutes.USER}/org/findOrgList`,
    method: 'POST',
    data: {},
  })
}

/**
 * 添加用户部门映射
 * @param {string} data.orgId
 * @param {string} data.userId
 */

export function addUserOrg(data) {
  return request({
    url: `${ApiModulesRoutes.USER}/user/addUserOrg`,
    method: 'POST',
    data,
  })
}

/**
 * 查询所有角色
 * @param {String} data.pageNo
 * @param {String} data.pageSize
 */

export function findRoleList(data) {
  return request({
    url: `${ApiModulesRoutes.USER}/role/findRolePageByParam`,
    method: 'POST',
    data,
  })
}

/**
 * 批量添加角色
 * @param {List} data
 */
export function addRoleUserBatch(data) {
  return request({
    url: `${ApiModulesRoutes.USER}/roleUser/addRoleUserBatch`,
    method: 'POST',
    data,
  })
}

/**
 * 添加用户角色映射关系
 * @param {String} data.roleId
 * @param {String} data.userId
 */

export function addRoleUser(data) {
  return request({
    url: `${ApiModulesRoutes.USER}/user/addRoleUser`,
    method: 'POST',
    data,
  })
}

/**
 * 删除用户角色映射关系
 * @param {String} param.roleId
 * @param {String} param.userId
 */

export function delRoleUser(params) {
  console.log(params)
  return request({
    url: `${ApiModulesRoutes.USER}/user/delRoleUser`,
    method: 'GET',
    params,
  })
}

/**
 * 删除部门角色映射关系
 * @param {String} param.orgId
 * @param {String} param.userId
 */

export function delUserOrg(params) {
  console.log(params)
  return request({
    url: `${ApiModulesRoutes.USER}/user/delUserOrg`,
    method: 'GET',
    params,
  })
}
